package com.shou.util;

import java.io.File;

import org.springframework.web.multipart.commons.CommonsMultipartFile;

import com.shou.BusinessException;


/**
 * 图片上传类 返回的图片路径一概皆为相对路径，即去掉项目路径前缀的相对路径
 * @author Administrator
 *
 */
public class ImageUtil {
//
//	/**
//	 * 多图片上传
//	 * @param cmfile
//	 * @param fsize
//	 * @param fileFolder  ../../.. 形式，首位不需要"/"
//	 * @return
//	 */
//	public static List<UploadFile> uploadMutiPicture(CommonsMultipartFile[] cmfiles, Integer fsize,String fileFolder) {
//		
//		//StringBuilder filePath = new StringBuilder();				
//		List<UploadFile> picList = new ArrayList<>();
//		for(CommonsMultipartFile cmfile:cmfiles){			
//			//filePath.append(uploadPicture(cmfile,fsize,fileFolder));
//			//filePath.append(",");
//			
//			picList.add(uploadPicture(cmfile,fsize,fileFolder));
//		}
//		return picList;
//	}
	
	/**
	 * 上传图片 适用于android,pc 不适用于ios  
	 * @param request
	 * @param cmfile 文件请求类
	 * @param fsize 文件大小
	 * @param imagePath 文件路径  ../../.. 形式，首位不需要"/"
	 */
	public static void uploadPicture(CommonsMultipartFile cmfile, Integer fsize,String imagePath){
		Integer filesize = fsize;
		if (fsize != null) {
			filesize = filesize * 1024 * 1024;
		} else {
			fsize = 10;
			filesize = 1024 * 1024 * 10;
		}
		if (cmfile != null && !cmfile.isEmpty()) {
			try {
				if (cmfile.getSize() < filesize) {
					String filename = cmfile.getOriginalFilename(); 
					String suffix = filename.substring(filename
							.lastIndexOf("."));
					//String newPath = "";
					
					//查看文件路徑是否存在
					//FileUtil.getLocalFolder(CommonVar.IMG_PREFIX+"/"+fileFolder);
					
					//FileUtil.getLocalFolder(imagePath);

					if ((".gif.png.jpg.jpeg.bmp".indexOf(suffix.toLowerCase()) < 0)) {
						throw new BusinessException("图片格式不正确");
					} 
					//暂时保存在同根的目录下
					File file = new File(imagePath);
					if (!file.exists()) {
						file.createNewFile();
					}
					cmfile.getFileItem().write(file);
					//return	new UploadFile(fileFolder,file.getName());
				} else {
					throw new BusinessException("文件大小不能超过" + fsize + "M");
				}
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		//return null;
	}		
	
//	public static String getFileFolder(String folderName){
//		File file = new File(folderName);
//		int length = file.list().length;
//	}
}
